--[[local array = {"1","2","3","4","5","6","7"}
for i=#array,1,-1 do
  table.remove(array, i)
  print(#array)
end
for i,v in ipairs(array) do
    print(i,v)
end

if  type(array)=="table" then
	print("--------------->||||-->")
end--]]

-- print("--------------->||||-->")


-- math.randomseed(os.time())
-- local a=math.random(0,180)
-- print("a---->:",a)
-- a=math.random(0,180)
-- print("a---->:",a)
-- a=math.random(0,180)
-- print("a---->:",a)
-- a=math.random(0,180)
-- print("a---->:",a)

-- local d={
-- 	{
-- 		petId=1,
-- 		value=100,
-- 	},
-- 		{
-- 		petId=2,
-- 		value=2,
-- 	},
-- }

-- for _,v in pairs(d) do
-- 	print(v.petId)
-- end

-- table.sort( d, function(a,b)
-- 			return a.value<b.value
-- end )

-- for _,v in pairs(d) do
-- 	print(v.petId)
-- end
-- print("aa")

-- local data={
-- 	[4541733637]={
-- 		["Level"]={
-- 			[3]=1,
-- 			[8]=2
-- 		}
-- 	},

-- 	[4609523043]={
-- 		["Level"]={
-- 			[103]=1,
-- 			[18]=2
-- 		}
-- 	}
-- }

-- for k,v in pairs(data) do

-- 	local base=0
-- 	for j,p in pairs(v.Level) do
-- 		base=base+j*p
-- 	end
-- 	if base>100 then
-- 		data[k]=nil
-- 	else
-- 		v["base"]=base
-- 		v["Up"]=1
-- 		v.Level[1]=100
-- 	end

-- end

-- for k,v in pairs(data) do

-- 		print(k,v.base)
-- 		print(k,v.Up)
-- 			for j,p in pairs(v.Level) do
-- 				print(j,p)
-- 	end
-- end

-- local data={
-- 		a=1,b=2
-- 	}

-- local count=2

-- count=count or 1
-- 	-- local c=data["c"] or 0

-- 	print(count)

-- local data={
-- 	a=1,b=2,c=3,d=110,e=101
-- }

-- for k,v in pairs(data) do

-- 	if v<100 then
-- 			data[k]=nil
-- 	end
-- end

-- for k,v in pairs(data) do

-- print(k,v)
-- end


--保留x个有效数位 例如:2010000--> 两位有效数：2000000
-- function DigitsSignificantX(num,x)

--     x= x or 2
--     local num= math.floor(num)
    
--     local str=tostring(num)

--     if string.len(str)<=x then
--         return num
--     end

--     local subStr=string.sub(str,1,x)
--     local r=tonumber(subStr)
--     for i=1,string.len(str)-x do
--         r=r*10
--     end
--     return r
-- end


-- print(DigitsSignificantX(2,3))

-- print(DigitsSignificantX(21,3))
-- print(DigitsSignificantX(211,3))
-- print(DigitsSignificantX(215,3))
-- print(DigitsSignificantX(210,3))

-- print(DigitsSignificantX(2155,3))




-- function dataTest(data)
--     if data then
--         if data.lier then -- 质疑对方是骗子
--             print("骗子")
--         else
--             print(#data.."张")
--         end
--     else
--         print("空")
--     end

-- end
-- dataTest()
-- dataTest({lier=true})
-- dataTest({"j","a"})

-- function F2(sendcard,cardsList)

--     -- 更新手牌
--     local newCardList={}
--     for k,v in pairs(cardsList) do
--         print("----K--V--sendcard[v]--",k,v,sendcard[v])
--         if  sendcard[v] and sendcard[v]>0 then
--             -- print(v)
--             -- table.remove(cardsList,k)
--             sendcard[v]=sendcard[v]-1
--         else
--             table.insert(newCardList,v)
--         end
--     end

--     return newCardList
-- end

-- local sendcard={
--     ["A"]=2,
--     ["K"]=2,
--     ["J"]=0,
-- }
-- local cardsList={
--     "A","K","K","J","A","K"
-- }

-- local d= F2(sendcard,cardsList)

-- print("------------")
-- for _,v in pairs(d) do
--     print(v)
-- end

-- local data={}

-- for i=1,200 do
--     local num=math.random(1,10)
--     if data[num] then
--         data[num] =data[num] +1
--     else
--         data[num]=1
--     end
-- end

-- local sum=0
-- for k,v in pairs(data) do
--     print(k,v)
--     sum=sum+v
-- end

function UpdateBroWeapon(mustBroId,broEquipData,weaponData)

    mustBroId=mustBroId or {}
   -- local broEquipData=_G.CommonOHOH:DeepCopy(self.DataStore:GetData("broEquip").__real)
   -- local weaponData= _G.CommonOHOH:DeepCopy(self.DataStore:GetData("weapon").__real)
   local myequipId=weaponData.equip
   weaponData.had[myequipId]= weaponData.had[myequipId]-1
   local isUpdate=false

   local hadMust={}
                   print("mustBroId--count>",#mustBroId)

   for _,broid in pairs(mustBroId) do
                print("mustBroId-->",broId)

       local wid=  broEquipData[broid]
        weaponData.had[wid]= weaponData.had[wid]-1
        hadMust[broid]=true
   end

   for broId,wid in pairs(broEquipData) do
    print("broId-->",broId,hadMust[broId])
        if not hadMust[broId] then

 
            print("broId--1->",broId)

            if  weaponData.had[wid] and  weaponData.had[wid]>0 then
                                print("broId--2-0>",broId)

                weaponData.had[wid]= weaponData.had[wid]-1
            else
                print("broId--2-1>",broId)

                broEquipData[broId]=nil
                isUpdate=true
            end
        else
            print("broId--1-no:>",broId)
        end
   end
   return isUpdate,broEquipData,weaponData
end

local broEquipData={
    ["bro1"]="1_2",
    ["bro2"]="1_2",
    ["bro3"]="1_2",
}

local weaponData={
    equip="1_2",-- 配置表Id_等级Id
    had={
    ["1_1"]=2,
    ["1_2"]=2,
    }
}

local mustBroID={"bro1"}
local a1,d1,d2=UpdateBroWeapon(mustBroID,broEquipData,weaponData)

print("________isUpdate___________",a1)

print("_________broEquipData________")

for k,v in pairs(d1) do
    print(k,v)
end

print("________weaponData________")

for k,v in pairs(d2.had) do
    print(k,v)
end